Information management applications provide users with effective and convenient ways to communicate with others and manage their information. Examples of information management applications include but are not limited to email applications and calendar applications. Some information management applications integrate these various types of applications by way of modules, such as email, calendar, contact, and task modules, although each type of application or functionality may also be provided in a stand-alone manner. Microsoft® Outlook® is one example of an information management application.
While many information management applications are provided as locally installed and executed applications, many can be experienced in a wide variety of ways. For example, some information management applications are available as web-based applications that are experienced through a browser application, as mobile applications customized for mobile environments, or even as a mobile web-based application generally developed for a mobile browser experience. In addition, information management applications can be experienced on a wide variety of computing devices, such as desktop, laptop, or tablet computers, mobile phones, gaming systems, Internet appliances, or any other physical or virtual computing system, variation, or combination thereof.
Most information management applications communicate with application exchange services to facilitate various tasks, such as sending and receiving email, scheduling events, and the like. Many of these and other tasks implicate data that is synchronized. For example, when an action is taken in one environment, changes can be made to data that are then synchronized with other versions of the data.
In two specific examples, when a user deletes an email or dismisses an event reminder, data representative of the email or event reminder is changed, as are other versions of the data that may be accessed through other application environments. This may be the case not only with respect to the various ways in which a user may engage an information exchange service, but also with respect to multi-user situations. For example, multiple users may interact with a shared inbox. While the users may generally interact without causing conflicts, it is possible for an action of one user to conflict with an action taken by another user. In these and other scenarios, conflicts can lead to inconsistent experiences, data corruption, and possibly other problems arising from the conflicting actions.